"""
管理员接口层
"""
from db.models import School, Course


def create_school_interface(school_name: str, address: str) -> (bool, str):
    """
    创建学校接口
    :param school_name: 学校名称
    :param address: 学校地址
    :return:
    """
    # 学校已存在
    if School.is_exist(school_name):
        return False, '此学校已存在！'
    # 用户不存在 创建学校对象
    school_obj = School(school_name, address)
    school_obj.save()  # 保存
    return True, f'{school_obj.name}学校创建成功！'


def create_course_interface(school_name, course_name: str, price: str) -> (bool, str):
    """
    创建课程接口
    :param school_name: 课程所在学校名称
    :param course_name: 课程名称
    :param price: 课程价格
    :return:
    """
    # 课程存在
    if Course.is_exist(course_name):
        return False, '此课程已存在！'
    # 新建课程
    school_obj = School.read(school_name)  # 获取学校
    course_obj = Course(course_name, price)  # 新建课程
    course_obj.save()  # 保存课程
    school_obj.course_list.append(course_obj)  # 添加课程到学校列表
    school_obj.save()  # 保存学校
    return True, f'{course_obj.name}课程创建成功'
